// const arr = [10, 20, 30, 40]
// pop
// const popRes = arr.pop()      // 返回数组末尾的值，并删除数组中末尾的值
// console.log(popRes, arr)

// push
// const pushRes = arr.push(50)  // 把当前值添加到数组末尾，并返回数组的length
// console.log(pushRes, arr)

// // unshift
// const unshiftRes = arr.unshift(5)  // 把当前值添加到数组首位，并返回数组的length
// console.log(unshiftRes, arr)

// shift
// const shiftRes = arr.shift()  // 返回数组首位的值，并删除数组中首位的值
// console.log(shiftRes, arr)


// // 纯函数
// const arr = [10, 20, 30, 40]
// // concat
// const arr1 = arr.concat([50, 60, 70])
// arr.push(100)
// console.log(arr, arr1)
// // map
// const arr2 = arr.map(num => num * 10)
// console.log(arr, arr2)
// // filter
// const arr3 = arr.filter(num => num > 20)
// console.log(arr, arr3)
// // slice
// const arr4 = arr.slice()
// console.log(arr, arr4)


// const arr = [10, 20, 30, 40, 50]

// // slice 纯函数
// const arr1 = arr.slice()
// const arr2 = arr.slice(1, 4)
// const arr3 = arr.slice(2)
// const arr4 = arr.slice(-2)
// console.log(arr1, arr2, arr3, arr4)
//
// splice 非纯函数
// const spliceRes = arr.splice(1, 2, 'a', 'b', 'c')
// const spliceRes1 = arr.splice(1, 2)
// const spliceRes2 = arr.splice(1, 0, 'a', 'b', 'c')
// console.log(arr, spliceRes2)

// const res = [10, 20, 30].map(parseInt)
// console.log(res)
// // 拆解
// [10, 20, 30].map((num, index) => {
//     return parseInt(num, index)
// })







